package edu.utn.tacs.grupouno.rest.implementations;

import java.util.List;
import java.util.UUID;

import javax.ws.rs.Path;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import edu.utn.tacs.grupouno.dao.PacientesDAO;
import edu.utn.tacs.grupouno.negocio.Analisis;
import edu.utn.tacs.grupouno.negocio.Paciente;
import edu.utn.tacs.grupouno.rest.api.PacientesService;

@Service("pacientesService")
@Path("/pacientes")
public class PacientesServiceImpl implements PacientesService {

	private PacientesDAO dao;
	
	@Override
	public List<Paciente> getPacientes() {
		return dao.getPacientes();
	}
	
	@Override
	public Paciente getPaciente(String id) {
		return dao.getPaciente(id);
	}
	
	@Override
	public List<Analisis> getAnalisis(String id) {
		return dao.getAnalisis(id);
	}
	
	@Override
	public void putPaciente(String id, Paciente paciente) {
		paciente.setId(UUID.fromString(id));
		dao.savePaciente(paciente);
	}
	
	@Override
	public void postPaciente(Paciente paciente) {
		dao.savePaciente(paciente);
	}
	
	@Override
	public void deletePaciente(String id) {
		dao.deletePaciente(id);
	}
	
	@Autowired
	public void setPacientesDAO(PacientesDAO dao) {
		this.dao = dao;
	}
}
